<?php
/* -------------------------------------------------------------------------------------
* 	ID:						$Id: ot_subtotal_no_tax.php 399 2014-01-18 16:02:23Z phone.mueller@googlemail.com $
* 	Letzter Stand:			$Revision: 399 $
* 	zuletzt geaendert von:	$Author: siekiera $
* 	Datum:					$Date: 2014-01-18 16:02:23 +0000 (Sat, 18 Jan 2014) $
*
* 	SEO:mercari by Siekiera Media
* 	http://www.seo-mercari.de
*
* 	Copyright (c) since 2011 SEO:mercari
* --------------------------------------------------------------------------------------
* 	based on:
* 	(c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
* 	(c) 2002-2003 osCommerce - www.oscommerce.com
* 	(c) 2003     nextcommerce - www.nextcommerce.org
* 	(c) 2005     xt:Commerce - www.xt-commerce.com
*
* 	Released under the GNU General Public License
* ----------------------------------------------------------------------------------- */

class ot_subtotal_no_tax {

	var $title, $output;

	function __construct() {
		global $price, $db;
		$this->code = 'ot_subtotal_no_tax';
		$this->title = MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_TITLE;
		$this->description = MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_DESCRIPTION;
		$this->enabled = ((MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_STATUS == 'true') ? true : false);
		$this->sort_order = MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_SORT_ORDER;
		$this->output = array();
		$this->db = $db;
	}

  function process($values_from_cart = false, &$order_total_array) {
		global $order, $price;
    $order_total_base = $order_total_array['all'];
		
		if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 
			|| $_SESSION['customers_status']['customers_status_add_tax_ot'] == 0) {
			$this->enabled = false;
			return;
		}
		else {
			die('modules/payment/'.__CLASS__.' - ToDo');
		}

		if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {
			if ($_SESSION['customers_status']['customers_status_ot_discount_flag'] == 1)
				$sub_total_price = $order->info['subtotal'] - round($order->info['subtotal'] / 100 * $_SESSION['customers_status']['customers_status_ot_discount'], 2);
			else
				$sub_total_price = $order->info['subtotal'];
				
			if(MODULE_SMALL_BUSINESS_STATUS != 'true') {
				$this->output[] = array('title' => $this->title . ':',
										'text' => $price->format($sub_total_price+($price->format($order->info['shipping_cost'], false,0,true)), true),
										'value' => $price->format($sub_total_price+($price->format($order->info['shipping_cost'], false,0,true)), false));
			}
		}
    }

    function check() {
      if (!isset($this->_check)) {
        $check = $this->db->db_query("SELECT configuration_value from " . TABLE_CONFIGURATION . " WHERE configuration_key = 'MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_STATUS'");
        $this->_check = $check->_numOfRows;
      }

      return $this->_check;
    }

    function keys() {
      return array('MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_STATUS', 'MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_SORT_ORDER');
    }

    function install() {
      $this->db->db_query("INSERT INTO " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, set_function, date_added) VALUES ('MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_STATUS', 'true', '6', '1','cfg_select_option(array(\'true\', \'false\'), ', now())");
      $this->db->db_query("INSERT INTO " . TABLE_CONFIGURATION . " (configuration_key, configuration_value, configuration_group_id, sort_order, date_added) VALUES ('MODULE_ORDER_TOTAL_SUBTOTAL_NO_TAX_SORT_ORDER', '4','6', '2', now())");
    }

    function remove() {
      $this->db->db_query("DELETE FROM " . TABLE_CONFIGURATION . " WHERE configuration_key in ('" . implode("', '", $this->keys()) . "')");
    }
  }
?>